#ifndef REGISTROOCURRENCIA_H_
#define REGISTROOCURRENCIA_H_

#include <string>
#include <fstream>


class RegistroOcurrencia {
	private:
		std::string _termino;
		unsigned int _docID;

	public:
		RegistroOcurrencia();
		RegistroOcurrencia(std::string term, unsigned int docID);

		std::string getTermino() const;
		unsigned int getDocID() const;

		void setTermino(std::string term);
		void setDocID(unsigned int docID);

		// Los operadores de comparacion para que funcione con el heap
        bool operator<(const RegistroOcurrencia& ro) const;
        bool operator>(const RegistroOcurrencia& ro) const;
        RegistroOcurrencia& operator=(const RegistroOcurrencia& ro);

		// Para hacer el guardado y recuperacion de los datos desde el archivo
		friend std::fstream& operator<<(std::fstream& fout, RegistroOcurrencia& reg);
		friend std::fstream& operator>>(std::fstream& fin, RegistroOcurrencia& reg);

		static std::string TERMINO_MAXIMO_IMPOSIBLE(){
			return "zzzzzzz";
		}
};


#endif /* REGISTROOCURRENCIA_H_ */
